/**
 * 咨询相关API类型定义
 */

export interface ConsultRecord {
  id: string;
  title: string;
  content: string;
  status: 'pending' | 'processing' | 'completed' | 'cancelled';
  userId: string;
  consultantId?: string;
  category?: string;
  priority?: 'low' | 'medium' | 'high';
  createdAt: string;
  updatedAt: string;
}

export interface CreateConsultParams {
  title: string;
  content: string;
  category?: string;
  priority?: 'low' | 'medium' | 'high';
}

export interface ConsultListQuery {
  page?: number;
  pageSize?: number;
  status?: string;
  keyword?: string;
  category?: string;
  userId?: string;
  consultantId?: string;
  sortBy?: string;
  sortOrder?: 'asc' | 'desc';
}

export interface ConsultListResponse {
  list: ConsultRecord[];
  total: number;
  page: number;
  pageSize: number;
}

export interface ConsultListParams {
  page?: number;
  pageSize?: number;
  status?: string;
  keyword?: string;
}

export interface ConsultItem {
  id: string;
  title: string;
  content: string;
  status: string;
  createdAt: string;
  updatedAt: string;
}

export interface UpdateConsultParams {
  title?: string;
  content?: string;
  status?: 'pending' | 'processing' | 'completed' | 'cancelled';
  priority?: 'low' | 'medium' | 'high';
}
